package com.barnabe;

import com.barnabe.filters.Filtro;
import com.barnabe.filters.ImageToolkit;
import com.barnabe.filters.Subtracao;
import java.awt.image.BufferedImage;
import javax.swing.JTextArea;
import javax.swing.JTextField;

/**
 *
 * @author Nil e Leonardo e arthur
 */
public class IdentificarCamera extends Filtro {

    public static JTextField txErro;
    public static JTextArea log;
    public static JTextField cam;

    public static BufferedImage executar(BufferedImage bImagem ) {
        int resultado = 0 ;
        // janela de comparacao
        int xInicio = 189,
                yInicio = 156,
                xFim = 194,
                yFim = 160;
        // fim janela

        try {
            // retorna a media do lixo que sobrou entre a subtracao das duas imagens
            resultado = Subtracao.diferencaEntre(bImagem, ImageToolkit.getImagemPonte() , xInicio, yInicio, xFim, yFim);
            
            txErro.setText(Integer.toString( resultado ));
            //Janela definida de acordo com os testes
            boolean ehValido = ((resultado > -100) && (resultado < +100));
            // atualizando tela
            cam.setForeground( ehValido ? java.awt.Color.RED : java.awt.Color.BLACK );
            cam.setText( ehValido ? "PONTE" : "NAO IDENTIFICADO"); 

            if ( ehValido ) IdentificarVeiculo.encontrar(bImagem);
            bImagem = null;
            //Vai tartaruguinha!            
            return null;
        } catch (Exception e) {
            //log.append(e.getMessage() + "\n");
            return null;
        }
    }
}
